<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>

</html>
<script>
    // all 全部
    // race 赛跑
    // Promise.all(iterable),//迭代器 Array
    // Promise.race()
    {
        // let pAll = Promise.all([p1,p2,p3]);
        /**当p1p2p3都执行完成后，pAll的状态变成已成功，返回结果为参数顺序
         * 当p1p2p3中任意一个失败，pAll的状态都是失败的
         */
        
        let p1 = new Promise((reslove, reject) => {
            setTimeout(reslove => 3000, 'p1');
        })
        let p2 = new Promise((reslove, reject) => {
            setTimeout(reslove => 1000, 'p2');
        })
        let p3 = new Promise((reslove, reject) => {
            setTimeout(reslove => 4000, 'p3');
        })
        // 返回的也是一个promise对象
        let pAll = Promise.all([p1, p2, p3]);

        console.log(pAll);
        setTimeout(() => {
            console.log(pAll);
        }, 7000)


        pAll.then(success => {
            console.log('pAll.then', success);
        }, err => {
            console.log('pAll.then', err);
        })

        // setInterval(() => {
        //     console.log(1);
        // }, 1000);
    }
</script>